package com.edu.robot.modules.robot.corvert;

import cn.hutool.core.date.DateUtil;
import com.edu.robot.modules.robot.controller.vo.PromptVO;
import com.edu.robot.modules.robot.dto.PromptDTO;
import com.edu.robot.modules.robot.model.CrPrompt;

import java.util.Optional;

/**
 * @program: KQAIA
 * @description:
 * @author: 无恙
 * @create: 2025-03-23 11:56
 **/


public class PromptCovert {

	public static CrPrompt convert(PromptVO promptVO) {
		CrPrompt crPrompt = new CrPrompt();
		Optional.ofNullable(promptVO.getId()).ifPresent(id -> {
			crPrompt.setId(Long.valueOf(id));
		});

		Optional.ofNullable(promptVO.getStatus()).ifPresent(status -> {
			crPrompt.setStatus(Integer.valueOf(status));
		});

		Optional.ofNullable(promptVO.getName()).ifPresent(crPrompt::setName);

		Optional.ofNullable(promptVO.getPrompt()).ifPresent(crPrompt::setPrompt);

		Optional.ofNullable(promptVO.getDescription()).ifPresent(crPrompt::setDescription);
		return crPrompt;
	}

	public static PromptDTO convert(CrPrompt crPrompt) {
		PromptDTO promptDTO = new PromptDTO();
		promptDTO.setId(String.valueOf(crPrompt.getId()));
		promptDTO.setName(crPrompt.getName());
		promptDTO.setContent(crPrompt.getPrompt());
		promptDTO.setDesc(crPrompt.getDescription());
		promptDTO.setStatus(crPrompt.getStatus());
		promptDTO.setCreateTime(DateUtil.formatTime(crPrompt.getCreatedAt()));
		return promptDTO;
	}
}
